from typing import TypeVar, Generic, Optional
from pydantic import BaseModel, ConfigDict
from pydantic.alias_generators import to_camel

class ChatMessage(BaseModel):
    # 这里定义数据库返回的字段名（蛇形）
    id: int
    chat_id: str
    message_type: str
    content: str

    # 使用 ConfigDict 自动将所有蛇形字段名在输出为JSON时转换成驼峰
    model_config = ConfigDict(
        alias_generator=to_camel,
        populate_by_name=True,
    )